package com.buss.product.dao;


import com.buss.core.persistence.ResultList;
import com.buss.product.model.GoodsDetail;

public interface GoodsDetailDao {

	
	/**
	 * 新增商品明细信息
	 * @param detail
	 * @return
	 */
	public GoodsDetail saveGoodsDetail(GoodsDetail detail);
	
	/**
	 * 修改商品明细信息
	 * @param detail
	 */
	public void editGoodsDetail(GoodsDetail detail);
	
	/**
	 * 删除指定商品明细信息
	 * @param id
	 */
	public void removeGoodsDetail(Long id);
	
	/**
	 * 删除ID不在数组中的商品明细信息
	 * @param ids
	 */
	public void removeGoodsDetailByNotIds(Long goodsId,Long[] ids);
	
	/**
	 * 删除指定商品的明细信息
	 * @param id
	 */
	public void removeGoodsDetailByGoodsId(Long id);
	
	/**
	 * 根据商品编码获取明细信息
	 * @param goodsId
	 * @return
	 */
	public ResultList<GoodsDetail> queryGoodsDetail(Long goodsId);
	
	/**
	 * 根据条形码获取商品信息
	 * @param companyId
	 * @param branchId
	 * @param barCode
	 * @return
	 */
	public ResultList<GoodsDetail> queryGoodsDetailByBarcode(String companyId,String branchId,String barCode);
}
